Проверка работы сервисов ALD Pro
==============================================================================

Для проверки работоспособности сервисов **ALD Pro** добавлена утилита **aldproctl**, которая расширяет функционал **ipactl**, проверяя также сервисы **ALD Pro**.

Конфигурация
----------------------------------------------

Файл конфигурации имеет три обязательных блока: **FreeIPA**, **ALD Pro** и **Other**. Перед началом работы необходимо сделать резервную копию файла ``aldproctl.env``, а затем внести в него перечень сервисов для проверки по примеру ниже. Файл находится по следующему пути: ``/opt/rbta/aldpro/mp/bin/aldproctl/aldproctl.env``.

.. code-block:: bash

   [FreeIPA]
   Directory Service
   krb5kdc
   kadmin
   named
   httpd
   ipa-custodia
   smb
   winbind
   ipa-otpd
   ipa-dnskeysyncd
   [ALD Pro]
   GLOBAL-CATALOG
   GCSync
   aldpro-mp-services
   aldpro-canclient
   ad-salt-canrunner
   syncer
   syncer.timer
   [Other]
   celery
   celerybeat

.. note:: 

   Название сервисов в конфигурационном файле должны полностью соответствовать примеру. Ниже приведен список сервисов, доступных к проверке:

-  Directory Service
-  krb5kdc
-  kadmin
-  named
-  httpd
-  ipa-custodia
-  smb
-  winbind
-  ipa-otpd
-  ipa-dnskeysyncd
-  dirsrv@GLOBAL-CATALOG
-  ipa-gcsync
-  celery
-  celerybeat
-  aldpro-mp-service
-  aldpro-canclient
-  ad-salt-canrunner
-  syncer
-  syncer.timer

Перечень команд
----------------------------------------------

Для выполнения команд с сервисами используется ``systemctl``.

.. _tab:criteria:
.. list-table::
   :widths: 40 60
   :header-rows: 1
   :class: longtable
   :name: табл. 5

   * - Команда
     - Описание
   * - ``sudo aldproctl -h``
     - Отображает справочное сообщение
   * - ``sudo man aldproctl``
     - Отображает развернутое справочное сообщение с описанием работы утилиты
   * - ``sudo aldproctl --version``
     - Отображает используемую версию ALD Pro
   * - ``sudo aldproctl start|stop|restart|status --timeout=TIMEOUT``
     - Устанавливает время ожидания для выполнения операции. По умолчанию 60 секунд
   * - ``sudo aldproctl start``
     - Запускает сервисы, указанные в конфигурационном файле
   * - ``sudo aldproctl status``
     - Отображает статус сервисов, указанные в конфигурационном файле
   * - ``sudo aldproctl stop``
     - Останавливает работу сервисов, указанные в конфигурационном файле
   * - ``sudo aldproctl restart``
     - Перезапускает сервисы, указанные в конфигурационном файле
   * - ``sudo aldproctl start|stop|restart|status --service=service_name``
     - Флаг ``service`` выполняет операцию ``start\|stop\|restart\|status`` для service_name (название сервиса)
   * - ``sudo aldproctl start|stop|restart|status --ipa-check-only``
     - Флаг ``-i``, ``--ipa-check-only`` - выполняет операцию ``start\|stop\|restart\|status`` для сервисов блока FreeIPA
   * - ``sudo aldproctl start|stop|restart|status --aldpro-check-only``
     - Флаг ``-a``, ``--aldpro-check-only`` - выполняет операцию ``start\|stop\|restart\|status`` для сервисов блока ALD Pro
   * - ``sudo aldproctl start|stop|restart|status --other-check-only``
     - Флаг ``-o``, ``--other-check-only`` - выполняет операцию ``start\|stop\|restart\|status`` для сервисов блока Other


Варианты отображения статуса сервиса
----------------------------------------------

-  ЗАПУЩЕН - команда start сработала без ошибок и сервис запустился
-  ОСТАНОВЛЕН - команда stop сработала без ошибок и сервис остановлен
-  ПЕРЕЗАПУЩЕН - команда restart сработала без ошибок и сервис перезапущен
-  НЕ НАЙДЕН - сервис с таким именем не найден
-  НЕАКТИВЕН (МЕРТВ) - сервис неактивен
-  ОШИБКА - ошибка при вызове команды или работе сервиса
-  ПРЕВЫШЕНО ВРЕМЯ ОЖИДАНИЯ - превышено время выполнения операции
